netfilter: nft_set_pipapo: call nft_trans_gc_queue_sync() in catchall GC
authorSasha Levin <sashal@kernel.org>
Fri, 22 Sep 2023 16:30:26 +0000 (18:30 +0200)
committerSalvatore Bonaccorso <carnil@debian.org>
Fri, 29 Sep 2023 04:15:31 +0000 (05:15 +0100)
commitedbfdf6a6b1a424eb136d5a600731fcd07359740
treeec094ecb5cad07e08163de4187c435996dfd0df8
parent98673bf6acc72cbf0a6af5462ed1776e24b0ca81
netfilter: nft_set_pipapo: call nft_trans_gc_queue_sync() in catchall GC

commit 4a9e12ea7e70223555ec010bec9f711089ce96f6 upstream.

pipapo needs to enqueue GC transactions for catchall elements through
nft_trans_gc_queue_sync(). Add nft_trans_gc_catchall_sync() and
nft_trans_gc_catchall_async() to handle GC transaction queueing
accordingly.

Fixes: 5f68718b34a5 ("netfilter: nf_tables: GC transaction API to avoid race with control plane")
Fixes: f6c383b8c31a ("netfilter: nf_tables: adapt set backend to use GC transaction API")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name netfilter-nft_set_pipapo-call-nft_trans_gc_queue_syn.patch
include/net/netfilter/nf_tables.h
net/netfilter/nf_tables_api.c
net/netfilter/nft_set_hash.c
net/netfilter/nft_set_pipapo.c
net/netfilter/nft_set_rbtree.c